package cn.miju.wechatpay.properties;

import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.util.StringUtils;

import java.io.Serializable;

/**
 * <pre>
 *
 * 文件名 :  WechatpayProperties
 * 创建时间 : 2023年03月13日 14:47
 * 文件描述 : 无
 *
 * </pre>
 *
 * @author Huzb
 * @version 1.0.0
 */
@Data
@Accessors(chain = true)
public class WechatpayProperties implements Serializable {
    private static final long serialVersionUID = 1L;


    /**
     * 接口地址
     */
    private String url;

    /**
     * 商户号 string[1,32]
     */
    private String mchId;

    /**
     * 应用ID string[1,32]
     */
    private String appId;

    /**
     * 商户证书序列号
     */
    private String mchSerialNo;

    /**
     * 平台证书序列号
     */
    private String wechatPaySerial;

    /**
     * 商户私钥
     */
    private String privateKey;

    /**
     * apiV3密钥
     */
    private String v3Secret;

    /**
     * apiV2密钥
     */
    private String v2Secret;

    /**
     * 证书值通过hex解析为16进制存，只有接口版本是v2，付款码支付用到
     */
    private String certp12;


    public String getUrl() {
        if (!StringUtils.hasLength(url)) {
            url = "https://api.mch.weixin.qq.com";
        }
        return url;
    }
}
